<!DOCTYPE html>
<html>
<head>
    

    
<!-- Tencent Speed -->
<script>var _speedMark = new Date()</script>
<!-- End Tencent Speed -->
<!-- Tencent Analysis -->
<script async src="//tajs.qq.com/stats?sId=61422473"></script>
<!-- End Tencent Analysis -->


    



    <meta charset="utf-8">
    
    
    
    <title>z77z的小码窝 | 年少无为，卖码为生。</title>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    
    <meta name="theme-color" content="#ffff00">
    
    
    <meta name="keywords" content="undefined">
    <meta property="og:type" content="website">
<meta property="og:title" content="z77z的小码窝">
<meta property="og:url" content="http://z77z.oschina.io/index.html">
<meta property="og:site_name" content="z77z的小码窝">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="z77z的小码窝">
    
        <link rel="alternate" type="application/atom+xml" title="z77z的小码窝" href="/atom.xml">
    
    <link rel="shortcut icon" href="/favicon.ico">
    <link rel="stylesheet" href="/css/style.css?v=1.4.3">
    <script>window.lazyScripts=[]</script>
</head>

<body>
    <div id="loading" class="active"></div>

    <aside id="menu"  >
  <div class="inner flex-row-vertical">
    <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light" id="menu-off">
        <i class="icon icon-lg icon-close"></i>
    </a>
    <div class="brand-wrap" style="background-image:url(/img/brand.jpg)">
      <div class="brand">
        <a href="/" class="avatar waves-effect waves-circle waves-light">
          <img src="/img/avatar.jpg">
        </a>
        <hgroup class="introduce">
          <h5 class="nickname">邹海清</h5>
          <a href="mailto:1093615728@qq.com" title="1093615728@qq.com" class="mail">1093615728@qq.com</a>
        </hgroup>
      </div>
    </div>
    <div class="scroll-wrap flex-col">
      <ul class="nav">
        
            <li class="waves-block waves-effect active">
              <a href="/"  >
                <i class="icon icon-lg icon-home"></i>
                主页
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="/archives"  >
                <i class="icon icon-lg icon-archives"></i>
                归档
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="/tags"  >
                <i class="icon icon-lg icon-tags"></i>
                标签
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="https://git.oschina.net/z77z" target="_blank" >
                <i class="icon icon-lg icon-git"></i>
                git
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="http://t.qq.com/zouhaiqing123" target="_blank" >
                <i class="icon icon-lg icon-weibo"></i>
                微博
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="/custom"  >
                <i class="icon icon-lg icon-link"></i>
                404页面测试
              </a>
            </li>
        
      </ul>
    </div>
  </div>
</aside>

    <main id="main">
        <header class="top-header" id="header">
    <div class="flex-row">
        <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light on" id="menu-toggle">
          <i class="icon icon-lg icon-navicon"></i>
        </a>
        <div class="flex-col header-title ellipsis">z77z的小码窝</div>
        
        <div class="search-wrap" id="search-wrap">
            <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light" id="back">
                <i class="icon icon-lg icon-chevron-left"></i>
            </a>
            <input type="text" id="key" class="search-input" autocomplete="off" placeholder="输入感兴趣的关键字">
            <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light" id="search">
                <i class="icon icon-lg icon-search"></i>
            </a>
        </div>
        
        
        <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light" id="menuShare">
            <i class="icon icon-lg icon-share-alt"></i>
        </a>
        
    </div>
</header>
<header class="content-header index-header">

    <div class="container fade-scale">
        <h1 class="title">z77z的小码窝</h1>
        <h5 class="subtitle">
            
                年少无为，卖码为生。
            
        </h5>
    </div>

    


</header>

<div class="container body-wrap">

    <ul class="post-list">
    
        <li class="post-list-item fade">
            <article id="post-即时通讯框架T-io之WebSocket协议再之HelloWorld"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-06-05 23:14:44" datetime="2017-06-05T15:14:44.000Z"  itemprop="datePublished">2017-06-05</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/06/05/即时通讯框架T-io之WebSocket协议再之HelloWorld/">即时通讯框架T-io之WebSocket协议再之HelloWorld</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        一.t-io是干嘛的
这个框架已经开源到码云上面，介绍比较详细，链接：https://git.oschina.net/tywo45/t-io，由于官方介绍中的入门程序客户端和服务端都是用的java写的，而且是用简单的自定义TCP协议进行通信的，也有一个websocket协议的列子，感觉有点复杂，不好入门。就想着使用javascript来做客户端，t-io做服务端，采用websocket协议搞...
    

        <a href="/2017/06/05/即时通讯框架T-io之WebSocket协议再之HelloWorld/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/websocket/">websocket</a></li></ul>

    </div>
    
</article>

        </li>
    
        <li class="post-list-item fade">
            <article id="post-SpringBoot-Mybatis_Plus学习记录之公共字段自动填充"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-04-23 19:53:14" datetime="2017-04-23T11:53:14.000Z"  itemprop="datePublished">2017-04-23</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/04/23/SpringBoot-Mybatis_Plus学习记录之公共字段自动填充/">SpringBoot-Mybatis_Plus学习记录之公共字段自动填充</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        一.应用场景
平时在建对象表的时候都会有最后修改时间，最后修改人这两个字段，对于这些大部分表都有的字段，每次在新增和修改的时候都要考虑到这几个字段有没有传进去，很麻烦。mybatisPlus有一个很好的解决方案。也就是公共字段自动填充的功能。一般满足下面条件的字段就可以使用此功能：

这个字段是大部分表都会有的。

这个字段的值是固定的，或则字段值是可以在后台动态获取的。

常用的就是las...
    

        <a href="/2017/04/23/SpringBoot-Mybatis_Plus学习记录之公共字段自动填充/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/mybatisplus/">mybatisplus</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/springboot/">springboot</a></li></ul>

    </div>
    
</article>

        </li>
    
        <li class="post-list-item fade">
            <article id="post-java获取redis的日志信息和动态监控信息"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-04-04 15:21:14" datetime="2017-04-04T07:21:14.000Z"  itemprop="datePublished">2017-04-04</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/04/04/java获取redis的日志信息和动态监控信息/">java获取redis的日志信息和动态监控信息</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        效果展示

                
                    
                    
                
                实时监控
            

                
                    
                    
                
    ...
    

        <a href="/2017/04/04/java获取redis的日志信息和动态监控信息/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/jedis/">jedis</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/redis/">redis</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/监控/">监控</a></li></ul>

    </div>
    
</article>

        </li>
    
        <li class="post-list-item fade">
            <article id="post-Shiro中Session和Cookie的一些思考"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-03-27 15:21:14" datetime="2017-03-27T07:21:14.000Z"  itemprop="datePublished">2017-03-27</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/03/27/Shiro中Session和Cookie的一些思考/">Shiro中Session和Cookie的一些思考</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        这篇博客就来写一写之前学习shiro框架整合的时候，产生的一些问题，相信大家在学习的时候也有相应的一些疑惑。接下来就针对shiro中的session和cookie来捋一捋。
shiro整合学习的总结

shiro+redis集成，避免每次访问有权限的链接都会去执行MyShiroRealm.doGetAuthenticationInfo()方法来查询当前用户的权限，因为实际情况中权限是不会经常...
    

        <a href="/2017/03/27/Shiro中Session和Cookie的一些思考/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/cookie/">cookie</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/redis/">redis</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/session/">session</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/shiro/">shiro</a></li></ul>

    </div>
    
</article>

        </li>
    
        <li class="post-list-item fade">
            <article id="post-jqGrid+FastJson+MybatisPlus快速开发分页排序和增删改查"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-03-20 19:14:11" datetime="2017-03-20T11:14:11.000Z"  itemprop="datePublished">2017-03-20</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/03/20/jqGrid+FastJson+MybatisPlus快速开发分页排序和增删改查/">jqGrid+FastJson+MybatisPlus快速开发分页排序和增删改查</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        
                
                    
                    
                
                z77z后台管理系统
            
框架介绍
jqGrid ：是一个在jquery基础上做的一个表格控件，以ajax的方式和服务器端通信。支持json和xml数据和服务器交互，有很多自定义的功能，...
    

        <a href="/2017/03/20/jqGrid+FastJson+MybatisPlus快速开发分页排序和增删改查/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/jqGrid/">jqGrid</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/mybatisPlus/">mybatisPlus</a></li></ul>

    </div>
    
</article>

        </li>
    
        <li class="post-list-item fade">
            <article id="post-SpringBoot+Shiro学习之密码加密和登录失败次数限制"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-03-13 23:53:22" datetime="2017-03-13T15:53:22.000Z"  itemprop="datePublished">2017-03-13</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/03/13/SpringBoot+Shiro学习之密码加密和登录失败次数限制/">SpringBoot+Shiro学习之密码加密和登录失败次数限制</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        这个项目写到现在，基本的雏形出来了，在此感谢一直关注的童鞋，送你们一句最近刚学习的一句鸡汤：念念不忘，必有回响。再贴一张ui图片：

                
                    
                    
                
                z77z后台管理系统
            
··············...
    

        <a href="/2017/03/13/SpringBoot+Shiro学习之密码加密和登录失败次数限制/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/redis/">redis</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/shiro/">shiro</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/springboot/">springboot</a></li></ul>

    </div>
    
</article>

        </li>
    
        <li class="post-list-item fade">
            <article id="post-SpringBoot+Shiro学习之自定义拦截器管理在线用户（踢出用户）"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-03-05 17:27:14" datetime="2017-03-05T09:27:14.000Z"  itemprop="datePublished">2017-03-05</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/03/05/SpringBoot+Shiro学习之自定义拦截器管理在线用户（踢出用户）/">SpringBoot+Shiro学习之自定义拦截器管理在线用户（踢出用户）</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        应用场景
我们经常会有用到，当A 用户在北京登录 ，然后A用户在天津再登录 ，要踢出北京登录的状态。如果用户在北京重新登录，那么又要踢出天津的用户，这样反复。又或是需要限制同一用户的同时在线数量，超出限制后，踢出最先登录的或是踢出最后登录的。

第一个场景踢出用户是由用户触发的，有时候需要手动将某个在线用户踢出，也就是对当前在线用户的列表进行管理。


···················...
    

        <a href="/2017/03/05/SpringBoot+Shiro学习之自定义拦截器管理在线用户（踢出用户）/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/redis/">redis</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/shiro/">shiro</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/springboot/">springboot</a></li></ul>

    </div>
    
</article>

        </li>
    
        <li class="post-list-item fade">
            <article id="post-SpringBoot+Shiro学习之“记住我”和“GIF验证码”功能的实现"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-02-26 18:43:44" datetime="2017-02-26T10:43:44.000Z"  itemprop="datePublished">2017-02-26</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/02/26/SpringBoot+Shiro学习之“记住我”和“GIF验证码”功能的实现/">SpringBoot+Shiro学习之“记住我”和“GIF验证码”功能的实现</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        学习目标如标题有如下两个功能实现：

记住我的功能：通过设置key为“rememberMe”的cookie保存在客户端来完成记住我的功能，下次用户访问指定页面时就不会重新登录，一直到cookie过期后才会重新登录。

GIF格式验证码： 
                
                    
                    
                
 ...
    

        <a href="/2017/02/26/SpringBoot+Shiro学习之“记住我”和“GIF验证码”功能的实现/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/GIF验证码/">GIF验证码</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/shiro/">shiro</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/springboot/">springboot</a></li></ul>

    </div>
    
</article>

        </li>
    
        <li class="post-list-item fade">
            <article id="post-SpringBoot+Shiro学习之数据库动态权限管理和Redis缓存"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-02-17 22:12:58" datetime="2017-02-17T14:12:58.000Z"  itemprop="datePublished">2017-02-17</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/02/17/SpringBoot+Shiro学习之数据库动态权限管理和Redis缓存/">SpringBoot+Shiro学习之数据库动态权限管理和Redis缓存</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        发现问题，需找解决思路。之前我们整合Shiro，完成了登录认证和权限管理的实现，登录认证没什么说的，需要实现AuthorizingRealm中的doGetAuthenticationInfo方法进行认证，但是我们在实现doGetAuthorizationInfo权限控制这个方法的时候发现以下两个问题：

第一个问题：我们在ShiroConfig中配置链接权限的时候，每次只要有一个新的链接，或...
    

        <a href="/2017/02/17/SpringBoot+Shiro学习之数据库动态权限管理和Redis缓存/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/redis/">redis</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/shiro/">shiro</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/springboot/">springboot</a></li></ul>

    </div>
    
</article>

        </li>
    
        <li class="post-list-item fade">
            <article id="post-SpringBoot+shiro整合学习之登录认证和权限控制"
  class="article-card article-type-post" itemprop="blogPost">

    <div class="post-meta">
        <time class="post-time" title="2017-02-13 22:46:58" datetime="2017-02-13T14:46:58.000Z"  itemprop="datePublished">2017-02-13</time>

        


        

    </div>

    


  
    <h3 class="post-title" itemprop="name">
      <a class="post-title-link" href="/2017/02/13/SpringBoot+shiro整合学习之登录认证和权限控制/">SpringBoot+shiro整合学习之登录认证和权限控制</a>
    </h3>
  




    <div class="post-content" id="post-content" itemprop="postContent">

    
        学习任务目标
用户必须要登陆之后才能访问定义链接，否则跳转到登录页面。

对链接进行权限控制，只有当当前登录用户有这个链接访问权限才可以访问，否则跳转到指定页面。

输入错误密码用户名或则用户被设置为静止登录，返回相应json串信息。



我是用的是之前搭建的一个springboot+mybatisplus+jsp的一个基础框架。在这之上进行shiro的整合。需要的同学可以去我的码云下载。...
    

        <a href="/2017/02/13/SpringBoot+shiro整合学习之登录认证和权限控制/" class="post-more waves-effect waves-button">
            阅读全文…
        </a>
    </div>
    
    <div class="post-footer">
        
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/shiro/">shiro</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/springboot/">springboot</a></li></ul>

    </div>
    
</article>

        </li>
    
    </ul>

    
<nav id="page-nav">
    <div class="inner">
    <span class="page-number current">1</span><a class="page-number" href="/page/2/">2</a><a class="extend next" rel="next" href="/page/2/">下一页</a>
    </div>
</nav>


</div>

        <footer class="footer">
    <div class="top">
        
<p>
    <span id="busuanzi_container_site_uv" style='display:none'>
        站点总访客数：<span id="busuanzi_value_site_uv"></span>
    </span>
    <span id="busuanzi_container_site_pv" style='display:none'>
        站点总访问量：<span id="busuanzi_value_site_pv"></span>
    </span>
</p>


        <p>
            
                <span><a href="/atom.xml" target="_blank" class="rss" title="rss"><i class="icon icon-lg icon-rss"></i></a></span>
            
            <span>博客内容遵循<a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh">知识共享 署名 - 非商业性 - 相同方式共享 4.0 国际协议</a></span>
        </p>
    </div>
    <div class="bottom">
        <p>
            <span>Power by <a href="http://hexo.io/" target="_blank">Hexo</a> Theme <a href="https://github.com/yscoder/hexo-theme-indigo" target="_blank">indigo</a></span>
            <span>邹海清 &copy; 2016 - 2017</span>
        </p>
    </div>
</footer>

    </main>
    <div class="mask" id="mask"></div>
<a href="javascript:;" id="gotop" class="waves-effect waves-circle waves-light"><span class="icon icon-lg icon-chevron-up"></span></a>



<div class="global-share" id="globalShare">
    <ul class="reset share-icons">
      <li>
        <a class="weibo share-sns" target="_blank" href="http://service.weibo.com/share/share.php?url=http://z77z.oschina.io/&title=z77z的小码窝&pic=http://z77z.oschina.io/img/avatar.jpg" data-title="微博">
          <i class="icon icon-weibo"></i>
        </a>
      </li>
      <li>
        <a class="weixin share-sns wxFab" href="javascript:;" data-title="微信">
          <i class="icon icon-weixin"></i>
        </a>
      </li>
      <li>
        <a class="qq share-sns" target="_blank" href="http://connect.qq.com/widget/shareqq/index.html?url=http://z77z.oschina.io/&title=z77z的小码窝&source=" data-title=" QQ">
          <i class="icon icon-qq"></i>
        </a>
      </li>
      <li>
        <a class="facebook share-sns" target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=http://z77z.oschina.io/" data-title=" Facebook">
          <i class="icon icon-facebook"></i>
        </a>
      </li>
      <li>
        <a class="twitter share-sns" target="_blank" href="https://twitter.com/intent/tweet?text=z77z的小码窝&url=http://z77z.oschina.io/&via=http://z77z.oschina.io" data-title=" Twitter">
          <i class="icon icon-twitter"></i>
        </a>
      </li>
      <li>
        <a class="google share-sns" target="_blank" href="https://plus.google.com/share?url=http://z77z.oschina.io/" data-title=" Google+">
          <i class="icon icon-google-plus"></i>
        </a>
      </li>
    </ul>
 </div>


<div class="page-modal wx-share" id="wxShare">
    <a class="close" href="javascript:;"><i class="icon icon-close"></i></a>
    <p>扫一扫，分享到微信</p>
    <img src="" alt="微信分享二维码">
</div>




    <script src="//cdn.bootcss.com/node-waves/0.7.4/waves.min.js"></script>
<script>
var BLOG = { ROOT: '/', SHARE: true, REWARD: false };



lazyScripts.push('//s95.cnzz.com/z_stat.php?id=1261081671&web_id=1261081671')

</script>

<script src="/js/main.min.js?v=1.4.3"></script>


<div class="search-panel" id="search-panel">
    <ul class="search-result" id="search-result"></ul>
</div>
<template id="search-tpl">
<li class="item">
    <a href="{path}" class="waves-block waves-effect">
        <div class="title ellipsis" title="{title}">{title}</div>
        <div class="flex-row flex-middle">
            <div class="tags ellipsis">
                {tags}
            </div>
            <time class="flex-col time">{date}</time>
        </div>
    </a>
</li>
</template>

<script src="/js/search.min.js?v=1.4.3" async></script>






<script async src="//dn-lbstatics.qbox.me/busuanzi/2.3/busuanzi.pure.mini.js"></script>



<script>
(function() {
    var OriginTitile = document.title, titleTime;
    document.addEventListener('visibilitychange', function() {
        if (document.hidden) {
            document.title = '死鬼去哪里了！';
            clearTimeout(titleTime);
        } else {
            document.title = '(つェ⊂)咦!又好了!';
            titleTime = setTimeout(function() {
                document.title = OriginTitile;
            },2000);
        }
    });
})();
</script>



</body>
</html>
